In semiconductor manufacturing, defect diagnosis methods can be used to improve yield. A diagnosis method desirably has high diagnosis accuracy, high diagnosis resolution, and a short run time. Generally speaking, defect diagnosis methods can be classified into two main categories: cause-effect diagnosis and effect-cause diagnosis. Cause-effect diagnosis techniques (also called dictionary-based diagnosis techniques) typically pre-compute and store faulty responses of modeled faults in a dictionary. In the process of the diagnosis, the observed failure responses are compared with the pre-computed failure responses in the dictionary. The faults whose pre-computed failure responses have a close or closest match with the observed failure responses are chosen as final candidates. Because dictionary-based diagnosis techniques do not perform any fault simulation during the diagnosis, their diagnosis speed is typically fast. However, existing dictionary-based diagnosis approaches typically require a large amount of memory to store the pre-computed failures responses. For large designs, the large memory requirement can make such known dictionary-based diagnosis techniques impractical.
On the other hand, effect-cause diagnosis techniques do not initially simulate all the modeled faults. Instead, conventional effect-cause diagnosis techniques first identify fault candidates from the failing test pattern(s) using a back tracing procedure and subsequently perform simulations with the fault candidates. In general, effect-cause defect diagnosis comprises two phases. In the first phase, initial defect candidates are derived from the failed test patterns (and in particular from the failing test responses associated with the failed test patterns). In the second phase, one or more passing patterns are used to eliminate the “fake” defect candidates or rank the defect candidates according to the simulation mismatches of passing patterns. Compared to cause-effect diagnosis, effect-cause diagnosis techniques do not use a large amount of memory to store pre-computed faulty signatures and can also provide high diagnosis accuracy and diagnosis resolution. In many cases, however, a large number of passing patterns are simulated during the second phase of effect-cause diagnosis, which can slow the diagnosis.